load("//bazel:build.bzl", "redpanda_cc_library")

package(
    default_visibility = [
        "//src/v/storage/mvlog/tests:__pkg__",
    ],
)

redpanda_cc_library(
    name = "mvlog",
    srcs = [
        "batch_collecting_stream_utils.cc",
        "batch_collector.cc",
        "entry.cc",
        "entry_stream.cc",
        "entry_stream_utils.cc",
        "file.cc",
        "logger.cc",
        "readable_segment.cc",
        "segment_appender.cc",
        "segment_reader.cc",
        "skipping_data_source.cc",
        "versioned_log.cc",
    ],
    hdrs = [
        "batch_collecting_stream_utils.h",
        "batch_collector.h",
        "entry.h",
        "entry_stream.h",
        "entry_stream_utils.h",
        "errc.h",
        "file.h",
        "file_gap.h",
        "logger.h",
        "readable_segment.h",
        "reader_outcome.h",
        "segment_appender.h",
        "segment_identifier.h",
        "segment_reader.h",
        "skipping_data_source.h",
        "versioned_log.h",
    ],
    deps = [
        "//src/v/base",
        "//src/v/bytes:iobuf",
        "//src/v/bytes:iostream",
        "//src/v/container:chunked_vector",
        "//src/v/container:interval_set",
        "//src/v/hashing:crc32c",
        "//src/v/io",
        "//src/v/model",
        "//src/v/serde",
        "//src/v/storage",
        "//src/v/storage:record_batch_utils",
        "//src/v/utils:mutex",
        "//src/v/utils:named_type",
        "@fmt",
        "@seastar",
    ],
)
